import { del, get, patch, post } from '~/utils/request'

/**
 * 获取角色列表
 * @returns 结果
 */
export function getRoleList() {
  return get('/role')
}

/**
 * 添加角色
 * @param roleInfo 角色数据
 * @param roleInfo.roleName role名称
 * @param roleInfo.roleKey 标识字符串
 * @param roleInfo.roleMenuArr role角色的菜单数组
 * @param roleInfo.sortNum
 * @param roleInfo.status
 * @returns 结果
 */
export function addRole(roleInfo: {
  roleName: string
  roleKey: string
  roleMenuArr: string[]
  sortNum?: number
  status?: number
}) {
  return post('/role', roleInfo)
}

/**
 * 更新角色
 * @param roleId 角色id
 * @param roleData 角色数据
 * @param roleData.roleName role名称
 * @param roleData.roleMenuArr role角色的菜单数组
 * @returns 结果
 */
export function updateRole(
  roleId: string,
  roleData: {
    roleName: string
    roleMenuArr: string[]
  },
) {
  return patch(`/role/${roleId}`, roleData)
}

/**
 * 删除角色
 * @param roleId 角色ID
 * @returns 结果
 */
export function deleteRole(roleId: string) {
  return del(`/role/${roleId}`)
}
